<?php

/* Criando diretorio para as classes */
$diretorio = $objDataBase->getNomeDataBase();
mkdir($diretorio);
chdir($diretorio);
$diretorio = 'classes';
mkdir($diretorio);
chdir($diretorio);
$diretorio = 'entity';
mkdir($diretorio);
chdir($diretorio);

/* Criando as classes(objetos referentes as tabelas do banco) */
for ($i = 0; $i < count($objDataBase->tabelas); $i++) {
    $tabela = $objDataBase->getTabela($i);
    $objTabela = new Tabela($tabela);
    $nomeTabela = Util::nomeDbToClasse($objTabela->getNomeTabela());

    $diretorio = $i > 0 ? '../' : '';
    $diretorio .= Util::nomeDbToAtributo($objTabela->getNomeTabela());
    mkdir($diretorio);
    chdir($diretorio);

    /* Entity */
    $arquivo = $nomeTabela . '.class.php';
    $conteudo = CriarEntity::execute($objTabela);
    GravarArquivo::execute($arquivo, $conteudo);

    /* DAO */
    $arquivo = $nomeTabela . 'Dao.class.php';
    $conteudo = CriarObjetoDAO::execute($objTabela);
    GravarArquivo::execute($arquivo, $conteudo);

    /* Facade */
    $arquivo = $nomeTabela . 'Helper.class.php';
    $conteudo = CriarHelper::execute($objTabela);
    GravarArquivo::execute($arquivo, $conteudo);
}
?>